
#pragma once

#include "type.h"
#include "gameobject.h"

class Tower {
public:
	Tower(const Point& pos);
	virtual ~Tower();

	virtual void init();
    virtual bool update (float ticks);
    
	virtual Node* getSprite() = 0;

public:
    int id;
	
	GameObjectAttribute attribute;
    
    TowerType type;
    Point position;
    
protected:
	bool ellipseContains(const Point& pos);

private:
	static int SEED;

};

